package com.mmy.service.permissionmenu;

import java.util.HashMap;
import java.util.List;

import com.mmy.domain.permissionmenu.TConstRole;
import com.mmy.domain.sys.TSysUser;

public interface PermissionService {

	/**
	 * 函数功能说明： 通过角色ID查找角色
	 *
	 * @param 参数说明
	 * @return 返回值说明 ：角色对象
	 * @throws 异常处理说明
	 * @author 创建人 shangzl
	 * @date 创建日期 2020-11-12
	 */
	public TConstRole findByRoleID(int iRoleID);

	/**
	 * 函数功能说明： 通过角色名称查找角色
	 *
	 * @param 参数说明
	 * @return 返回值说明 ：角色集合
	 * @throws 异常处理说明
	 * @author 创建人 shangzl
	 * @date 创建日期 2020-11-12
	 */
	public int countRoleByRoleName(String strRoleName);

	/**
	 * 函数功能说明： 新建角色
	 *
	 * @param 参数说明
	 * @return 返回值说明 ：无返回值
	 * @throws 异常处理说明
	 * @author 创建人 shangzl
	 * @date 创建日期 2020-11-12
	 */
	public void createPermission(TConstRole tConstRole, TSysUser tSysUser);

	/**
	 * 函数功能说明： 删除角色
	 *
	 * @param 参数说明
	 * @return 返回值说明 ：无返回值
	 * @throws 异常处理说明
	 * @author 创建人 shangzl
	 * @date 创建日期 2020-11-12
	 */
	public void delPermission(String checkList);

	/**
	 * 函数功能说明： 修改角色
	 *
	 * @param 参数说明
	 * @return 返回值说明 ：无返回值
	 * @throws 异常处理说明
	 * @author 创建人 shangzl
	 * @date 创建日期 2020-11-12
	 */

	public void updatePermission(TConstRole tConstRole, TSysUser tSysUser);

	/**
	 * 查询所有
	 *
	 * @author 创建人 hanxl 整理
	 * @date 创建日期 2020.10.29
	 */
	public List<TConstRole> findAll();

	/**
	 * 函数功能说明： 查询角色
	 * 
	 * @param 参数说明
	 * @return 返回值说明 ：角色集合
	 * @throws 异常处理说明
	 * @author 创建人 shangzl
	 * @date 创建日期 2020-11-12
	 */
	public List<TConstRole> toPermission(String pageNumber, String pageSize, String strRoleName);

	/**
	 * 函数功能说明：角色分页
	 * 
	 * @param 参数说明
	 * @return 返回值说明 ：map
	 * @throws 异常处理说明
	 * @author 创建人 shangzl
	 * @date 创建日期 2020-11-12
	 */

	public HashMap<String, Integer> mapPermission(String pageNumber, String pageSize, String strRoleName);
}
